package org.fnzn.bean;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.sql.Array;
import java.util.Date;
import javax.persistence.*;

@Table(name = "fngl_customer")
public class FnglCustomer {
    /**
     * 主键
     */
    @Id
    @Column(name = "customer_id")
    private String customerId;

    /**
     * 手机号
     */
    private String phone;

    /**
     * 人员id
     */
    @Column(name = "staff_id")
    private String staffId;

    /**
     * 人员姓名
     */
    @Transient
    private String staffName;

    /**
     * 客户姓名
     */
    private String customerName;

    /**
     * 客户年龄
     */
    private String age;

    /**
     * 客户职业
     */
    private String occupation;

    /**
     * 客户所在省
     */
    private String province;

    /**
     * 客户所在市
     */
    private String city;

    /**
     * 客户所在区
     */
    private String area;

    /**
     * 意向房型
     */
    private String houseType;


    /**
     * 意向房源类型
     */
    private String type;

    /**
     * 意向房源装修情况
     */
    private String decorate;

    /**
     * 所属项目id
     */
    @Column(name = "project_id")
    private String projectId;

    /**
     * 项目名称
     */
    @Transient
    private String name;

    /**
     * 项目类别
     */
    @Transient
    private String projectType;

    /**
     * 意向面积
     */
    @Column(name = "intent_area")
    private String intentArea;

    /**
     * 意向价格
     */
    @Column(name = "intent_price")
    private String intentPrice;

    /**
     * 付款方式
     */
    @Column(name = "payment_method")
    private String paymentMethod;

    /**
     * 置业目的
     */
    @Column(name = "purchasing_purpose")
    private String purchasingPurpose;

    /**
     * 认识途径
     */
    @Column(name = "know_way")
    private String knowWay;

    /**
     * 客户登记
     */
    @Column(name = "customer_grade")
    private String customerGrade;

    /**
     * 客户描述
     */
    @Column(name = "customer_description")
    private String customerDescription = "";

    /**
     *  第二次客户来访详情
     */
    private String secondDescription = "";

    /**
     *  第三次客户来访详情
     */
    private String thirdDescription = "";

    /**
     *  第四次客户来访详情
     */
    private String fourthDescription = "";

    /**
     *  成交标志
     */
    private String turnoverFlag;

    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date createTime;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    /**
     *  录入时间范围
     */
    private String startTime;
    private String endTime;
    /**
     * 删除标识（0-正常,1-删除）
     */
    @Column(name = "del_flag")
    private String delFlag;

    /**
     * 获取主键
     *
     * @return customer_id - 主键
     */
    public String getCustomerId() {
        return customerId;
    }

    /**
     * 设置主键
     *
     * @param customerId 主键
     */
    public void setCustomerId(String customerId) {
        this.customerId = customerId == null ? null : customerId.trim();
    }

    /**
     * 获取手机号
     *
     * @return phone - 手机号
     */
    public String getPhone() {
        return phone;
    }

    /**
     * 设置手机号
     *
     * @param phone 手机号
     */
    public void setPhone(String phone) {
        this.phone = phone == null ? null : phone.trim();
    }

    /**
     * 获取人员id
     *
     * @return staff_id - 人员id
     */
    public String getStaffId() {
        return staffId;
    }

    /**
     * 设置人员id
     *
     * @param staffId 人员id
     */
    public void setStaffId(String staffId) {
        this.staffId = staffId == null ? null : staffId.trim();
    }

    public String getCustomerName() {
        return customerName;
    }

    public void setCustomerName(String customerName) {
        this.customerName = customerName;
    }

    public String getAge() {
        return age;
    }

    public void setAge(String age) {
        this.age = age;
    }

    public String getOccupation() {
        return occupation;
    }

    public void setOccupation(String occupation) {
        this.occupation = occupation;
    }

    public String getProvince() {
        return province;
    }

    public void setProvince(String province) {
        this.province = province;
    }

    public String getCity() {
        return city;
    }

    public void setCity(String city) {
        this.city = city;
    }

    public String getArea() {
        return area;
    }

    public void setArea(String area) {
        this.area = area;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public String getDecorate() {
        return decorate;
    }

    public void setDecorate(String decorate) {
        this.decorate = decorate;
    }

    public String getHouseType() {
        return houseType;
    }

    public void setHouseType(String houseType) {
        this.houseType = houseType;
    }

    /**
     * 获取所属项目id
     *
     * @return project_id - 所属项目id
     */
    public String getProjectId() {
        return projectId;
    }

    /**
     * 设置所属项目id
     *
     * @param projectId 所属项目id
     */
    public void setProjectId(String projectId) {
        this.projectId = projectId == null ? null : projectId.trim();
    }

    public String getStaffName() {
        return staffName;
    }

    public void setStaffName(String staffName) {
        this.staffName = staffName;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getProjectType() {
        return projectType;
    }

    public void setProjectType(String projectType) {
        this.projectType = projectType;
    }

    /**
     * 获取意向面积
     *
     * @return intent_area - 意向面积
     */
    public String getIntentArea() {
        return intentArea;
    }

    /**
     * 设置意向面积
     *
     * @param intentArea 意向面积
     */
    public void setIntentArea(String intentArea) {
        this.intentArea = intentArea;
    }

    /**
     * 获取意向价格
     *
     * @return intent_price - 意向价格
     */
    public String getIntentPrice() {
        return intentPrice;
    }

    /**
     * 设置意向价格
     *
     * @param intentPrice 意向价格
     */
    public void setIntentPrice(String intentPrice) {
        this.intentPrice = intentPrice;
    }

    /**
     * 获取付款方式
     *
     * @return payment_method - 付款方式
     */
    public String getPaymentMethod() {
        return paymentMethod;
    }

    /**
     * 设置付款方式
     *
     * @param paymentMethod 付款方式
     */
    public void setPaymentMethod(String paymentMethod) {
        this.paymentMethod = paymentMethod == null ? null : paymentMethod.trim();
    }

    /**
     * 获取置业目的
     *
     * @return purchasing_purpose - 置业目的
     */
    public String getPurchasingPurpose() {
        return purchasingPurpose;
    }

    /**
     * 设置置业目的
     *
     * @param purchasingPurpose 置业目的
     */
    public void setPurchasingPurpose(String purchasingPurpose) {
        this.purchasingPurpose = purchasingPurpose == null ? null : purchasingPurpose.trim();
    }

    /**
     * 获取认识途径
     *
     * @return know_way - 认识途径
     */
    public String getKnowWay() {
        return knowWay;
    }

    /**
     * 设置认识途径
     *
     * @param knowWay 认识途径
     */
    public void setKnowWay(String knowWay) {
        this.knowWay = knowWay == null ? null : knowWay.trim();
    }

    /**
     * 获取客户登记
     *
     * @return customer_grade - 客户登记
     */
    public String getCustomerGrade() {
        return customerGrade;
    }

    /**
     * 设置客户登记
     *
     * @param customerGrade 客户登记
     */
    public void setCustomerGrade(String customerGrade) {
        this.customerGrade = customerGrade == null ? null : customerGrade.trim();
    }


    /**
     * 获取客户描述
     *
     * @return customer_description - 客户描述
     */
    public String getCustomerDescription() {
        return customerDescription;
    }

    /**
     * 设置客户描述
     *
     * @param customerDescription 客户描述
     */
    public void setCustomerDescription(String customerDescription) {
        this.customerDescription = customerDescription == null ? null : customerDescription.trim();
    }

    public String getSecondDescription() {
        return secondDescription;
    }

    public void setSecondDescription(String secondDescription) {
        this.secondDescription = secondDescription;
    }

    public String getThirdDescription() {
        return thirdDescription;
    }

    public void setThirdDescription(String thirdDescription) {
        this.thirdDescription = thirdDescription;
    }

    public String getFourthDescription() {
        return fourthDescription;
    }

    public void setFourthDescription(String fourthDescription) {
        this.fourthDescription = fourthDescription;
    }

    public String getTurnoverFlag() {
        return turnoverFlag;
    }

    public void setTurnoverFlag(String turnoverFlag) {
        this.turnoverFlag = turnoverFlag;
    }

    /**
     * @return create_time
     */
    public Date getCreateTime() {
        return createTime;
    }

    /**
     * @param createTime
     */
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    /**
     * 获取修改时间
     *
     * @return update_time - 修改时间
     */
    public Date getUpdateTime() {
        return updateTime;
    }

    /**
     * 设置修改时间
     *
     * @param updateTime 修改时间
     */
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public String getStartTime() {
        return startTime;
    }

    public void setStartTime(String startTime) {
        this.startTime = startTime;
    }

    public String getEndTime() {
        return endTime;
    }

    public void setEndTime(String endTime) {
        this.endTime = endTime;
    }

    /**
     * 获取删除标识（0-正常,1-删除）
     *
     * @return del_flag - 删除标识（0-正常,1-删除）
     */
    public String getDelFlag() {
        return delFlag;
    }

    /**
     * 设置删除标识（0-正常,1-删除）
     *
     * @param delFlag 删除标识（0-正常,1-删除）
     */
    public void setDelFlag(String delFlag) {
        this.delFlag = delFlag == null ? null : delFlag.trim();
    }

}